|
API testing is a type of software testing that involves testing application programming interfaces (APIs) directly and as part of integration testing to determine if they meet expectations for functionality, reliability, performance, and security.〔(Testing APIs protects applications and reputations ), by Amy Reichert, SearchSoftwareQuality March 2015〕 Since APIs lack a GUI, API testing is performed at the message layer.〔(All About API Testing: An Interview with Jonathan Cooper ), by Cameron Philipp-Edmonds, Stickyminds August 19, 2014〕 API testing is now considered critical for automating testing because APIs now serve as the primary interface to application logic and because GUI tests are difficult to maintain with the short release cycles and frequent changes commonly used with Agile software development and DevOps).〔(The Forrester Wave™ Evaluation Of Functional Test Automation (FTA) Is Out And It's All About Going Beyond GUI Testing ), by Diego Lo Giudice, Forrester April 23, 2015〕〔(Produce Better Software by Using a Layered Testing Strategy ), by Sean Kenefick, Gartner January 7, 2014〕 ==API testing overview== API testing involves testing APIs directly (in isolation) and as part of the end-to-end transactions exercised during integration testing.〔 Beyond RESTful APIs, these transactions include multiple types of endpoints such as web services, ESBs, databases, mainframes, web UIs, and ERPs. API testing is performed on APIs that the development team produces as well as APIs that the team consumes within their application (including third-party APIs).〔(Onus for third-party APIs is on enterprise developers ), by Amy Reichert, SearchSoftwareQuality July 2014〕 API testing is used to determine whether APIs return the correct response (in the expected format) for a broad range of feasible requests, react properly to edge cases such as failures and unexpected/extreme inputs, deliver responses in an acceptable amount of time, and respond securely to potential security attacks.〔〔 Service virtualization is used in conjunction with API testing to isolate the services under test as well as expand test environment access by simulating APIs/services that are not accessible for testing.〔(Accelerate Development with Automated Testing ), by Nathan Wilson, Gartner December 30, 2013〕 API testing commonly includes testing REST APIs or SOAP web services with JSON or XML message payloads being sent over HTTP, HTTPS, JMS, and MQ.〔〔(A Guidance Framework for Designing a Great Web API ), by Eric Knipp and Gary Olliffe , Gartner August 20, 2014〕 It can also include message formats such as SWIFT, FIX, EDI and similar fixed-length formats, CSV, ISO 8583 and Protocol Buffers being sent over transports/protocols such as TCP/IP, ISO 8583, MQTT, FIX, RMI, SMTP, TIBCO Rendezvous, and FIX.〔(The Fight Against Brittle Scripts and Software Defects ), by Adrian Bridgwater, Dr. Dobb's Journal October 26, 2011〕〔(How Do We Learn Composite App Testing-Speak? ), by Adrian Bridgwater, Dr. Dobb's Journal February 14, 2012〕 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「API testing」の詳細全文を読む スポンサード リンク
|